/* USER CODE BEGIN Header */
/**
  ******************************************************************************
  * @file           : main.h
  * @brief          : Header for main.c file.
  *                   This file contains the common defines of the application.
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
  * All rights reserved.</center></h2>
  *
  * This software component is licensed by ST under BSD 3-Clause license,
  * the "License"; You may not use this file except in compliance with the
  * License. You may obtain a copy of the License at:
  *                        opensource.org/licenses/BSD-3-Clause
  *
  ******************************************************************************
  */
/* USER CODE END Header */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H

#ifdef __cplusplus
extern "C"
{
#endif

/* Includes ------------------------------------------------------------------*/
#include "stm32l0xx_hal.h"
#include "stm32l0xx_hal.h"

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include "SEGGER_RTT.h"

  /* USER CODE END Includes */

  /* Exported types ------------------------------------------------------------*/
  /* USER CODE BEGIN ET */

  /* USER CODE END ET */

  /* Exported constants --------------------------------------------------------*/
  /* USER CODE BEGIN EC */

  /* USER CODE END EC */

  /* Exported macro ------------------------------------------------------------*/
  /* USER CODE BEGIN EM */

  /* USER CODE END EM */

  /* Exported functions prototypes ---------------------------------------------*/
  void Error_Handler(void);

/* USER CODE BEGIN EFP */

/* USER CODE END EFP */

/* Private defines -----------------------------------------------------------*/
#define Sensor_VDD_Pin GPIO_PIN_0
#define Sensor_VDD_GPIO_Port GPIOA
#define Sensor_ADC_Pin GPIO_PIN_1
#define Sensor_ADC_GPIO_Port GPIOA
#define Sensor_GND_Pin GPIO_PIN_2
#define Sensor_GND_GPIO_Port GPIOA
#define SPI2_NSS_Pin GPIO_PIN_12
#define SPI2_NSS_GPIO_Port GPIOB
#define SIM_DTR_Pin GPIO_PIN_7
#define SIM_DTR_GPIO_Port GPIOC
#define SIM_PWRKEY_Pin GPIO_PIN_8
#define SIM_PWRKEY_GPIO_Port GPIOC
#define LED_Green_Pin GPIO_PIN_3
#define LED_Green_GPIO_Port GPIOB
#define LED_Yellow_Pin GPIO_PIN_4
#define LED_Yellow_GPIO_Port GPIOB
#define LED_Red_Pin GPIO_PIN_5
#define LED_Red_GPIO_Port GPIOB
/* USER CODE BEGIN Private defines */
/*调试方法*/
#define __DEBUG__
#ifdef __DEBUG__
// #define debug(...) printf(__VA_ARGS__)
#define debug(...) SEGGER_RTT_printf(0, __VA_ARGS__)
#define debugline() debug("filename %s, line %d\r\n", __FILE__, __LINE__)
#define assert(e)                                                             \
  do                                                                          \
  {                                                                           \
    if (!(e))                                                                 \
    {                                                                         \
      debug("ASSERT FAIL: %s, filename %s, line %d", #e, __FILE__, __LINE__); \
      while (1)                                                               \
        ;                                                                     \
    }                                                                         \
  } while (0)
#else
#define debug(...) ;
#define assert(x) ;
#define debugline()
#endif

  /* USER CODE END Private defines */

#ifdef __cplusplus
}
#endif

#endif /* __MAIN_H */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
